Цель работы: познакомить с понятием запись; выработать
навыки работы со структурой данных запись в языке программирования Pascal. научиться описывать тип record, уметь инициализировать
переменные типа record, выводить на экран переменные
типа record;
научится решать задачи на использование записей
Под записью понимается
структура данных, объединяющая под одним именем данные различных типов. Записи
состоят из фиксированного числа элементов, называемых полями. Поле - это
переменная определенного типа. Различные поля могут иметь (в отличие от
элементов массива) различный тип. Обращение к элементу записи выполняется с
помощью составного имени. Первая часть составного имени - это имя записи,
вторая часть - имя поля. Между именем записи и именем поля ставится точка: zap.imp, где zap - имя записи, imp-
имя поля.
Перед выполнением
работы необходимо изучить правила описания и использования записей,
типизированных констант типа запись, оператора присоединения with.
1.
Багаж пассажира характеризуется
количеством вещей и общим весом вещей. Сведения о багаже каждого пассажира
представляют собой запись с двумя полями: одно поле целого типа (количество
вещей) и одно - действительное (вес в килограммах).
а) Найти число
пассажиров, имеющих более двух вещей и число пассажиров, количество вещей которых
превосходит среднее число вещей.
б) Определить, имеются
ли два пассажира, багажи которых совпадают по числу вещей и различаются по весу
не более чем на
в) Выяснить, имеется ли
пассажир, багаж которого состоит из одной вещи.
2.
Дана ведомость абитуриентов, сдавших
вступительные экзамены в университет (ФИО, оценки по трем экзаменам, место
жительства). Определить количество и вывести списки абитуриентов со средним
баллом не менее 6, фамилии которых начинаются с буквы А.
3.
В деканате хранится информация о летней
сессии на 1 курсе (фамилия, номер группы, оценка 1 по математике, оценка 2
по физике, оценка 3 по
программированию). Составить программу, выводящую фамилии студентов, сдавших
экзамены на 10 и 9, название предмета, который был сдан лучше всего, номера групп в
порядке убывания средней успеваемости их студентов.
4.
Указано: название игрушки, стоимость,
возрастные границы. Получить следующие сведения: 1) названия игрушек, цена
которых меньше 10 руб.; 2) название игрушек, которые подходят
как детям 4 лет, так и детям 10 лет; 3) можно ли подобрать игрушку,
любую, кроме мяча, подходящую ребенку 3
лет, и дополнительно мяч так, чтобы стоимость игрушек не превосходила 20
руб.
5.
После поступления в ВУЗ о студентах
собрана информация: фамилия, нуждается ли в общежитии, стаж, что окончил.
Составить программу, определяющую: 1) сколько человек нуждаются в общежитии; 2)
списки студентов, проработавших 2 и
более года; 3) списки уже имеющих высшее образование.
6.
Описать, используя структуру данных запись,
данные на студентов (фамилия, улица, дом, квартира). Составить программу,
определяющую сколько студентов живет на улице Свердлова, списки студентов,
живущих в доме номер 45.
7.
Дана ведомость абитуриентов, сдавших
вступительные экзамены в университет (ФИО, оценки по трем экзаменам, место
жительства). Определить количество абитуриентов, средний балл которых выше
среднего балла по институту. Вывести
список поступающих, причем первыми в списке идут абитуриенты, сдавшие все
экзамены на 10(9).
8.
В библиотеке для каждого заказывающего
книгу читателя заполняется карточка: фамилия, дата заказа, дата выдачи книги.
Определить: 1) сколько заказов было не удовлетворено; 2) кто чаще всего берет
книги; 3) кому выдали книги 15.09.90;
4) сколько человек заказывали книги 25.04.90.
9.
Багаж пассажира характеризуется
количеством вещей и общим весом вещей. Сведения о багаже каждого пассажира
представляют собой запись с двумя полями: одно поле целого типа (количество
вещей) и одно - действительное (вес в килограммах).
а) Найти число
пассажиров, имеющих более трех вещей.
б) Определить, имеются
ли два пассажира, багажи которых совпадают по числу вещей и различаются по весу
не более чем на
г) Выяснить, имеется ли
пассажир, багаж которого состоит из одной вещи весом менее
10.
Описать, используя структуру данных
запись, почтовую сортировку (город, улица, дом, квартира, кому, ценность).
Составить программу, определяющую: 1) сколько посылок отправлено в г. Москву;
2) сколько и куда (список городов) отправлено посылок ценностью выше 100
рублей; 3) есть ли адреса, куда отправлено более 1 посылки, если есть то сколько и кому.
11.
В школе было три 9 класса, в августе каждый классный руководитель имел сведения о
своих учениках: фамилия, куда поступал, поступил или нет. Определить сколько
учеников поступили в училище или техникум, сколько учеников будет учится в 10 классе, сколько необходимо создать 10 классов и по сколько человек.
12.
Дана ведомость абитуриентов, сдавших вступительные
экзамены в университет (ФИО, оценки по трем экзаменам, место жительства).
Определить количество и вывести списки абитуриентов, проживающих в городе
Минске и получивших хотя бы одну оценку «10».
13.
На олимпиаде по программированию на
студентов заполнялись анкеты: фамилия, наименование ВУЗА, группа, занятое
место. Вывести: 1) списки ВУЗов, занявших призовые места; 2) какой из ВУЗов
заняла больше всех призовых мест; 3) списки студентов, занявших первое место,
указать их группу.
14.
В деканате хранится информация о зимней
сессии на 1 курсе (фамилия, номер
группы, оценка 1 по математике,
оценка 2 по физике, оценка 3 по программированию). Составить
программу, выводящую фамилии студентов, имеющих задолженность хотя бы по одному
предмету, качество успеваемости, процент студентов, т.е. сдавших экзамены на 4
и 5, номера групп в порядке убывания средней успеваемости их студентов.
15.
В отделе кадров студентов хранится
следующая информация о каждом студенте: фамилия, имя, отчество, пол, возраст,
курс. Составить программу которая печатает номер курса, на котором наибольший
процент мужчин, самые распространенные мужские и женские имена, фамилии в
алфавитном порядке всех студенток, возраст которых являются самыми
распространенными.
16.
Указано: название игрушки, стоимость,
возрастные границы. Получить следующие сведения: 1) название игрушек, цена
которых не превышает 10 руб. и которые подходят детям до пяти лет;
2) цену самого дорогого конструктора; 3) названия игрушек, цена которых
превышает 100 руб.
1.
Как описываются переменные типа запись?
2.
В каких случаях целесообразно
использовать переменные типа запись?
3.
Из каких компонентов состоит переменная
типа запись?
4.
Каково назначение оператора with?
5.
Какие операции допустимы над полями записи?
6.
В чем отличие записей от массивов?